package com.ms.service.module.common.message;

import java.util.ArrayList;

import com.xpec.c4.game.utility.GUID;

/**
 * 更新 player 基本訊息(guid、session、... 到 common module)
 * 
 * @author brian_yang
 */
public class SPlayerCommonInfo {

	/**
	 * 
	 */
	public static final int REMOVE = 0;

	/**
	 * 
	 */
	public static final int UPDATE = 1;

	/**
	 * 
	 */
	public static final int UPDATE_ZONE_ID = 2;
	
	/**
	 * 聊天頻道更新
	 */
	public static final int CHANGE_CHAT_CHANNEL = 4;
	
	/**
	 * 第一次加入聊天頻道
	 */
	public static final int JOIN_CHAT_CHANNEL = 5;
	
	/**
	 * 創建私人頻道
	 */
	public static final int CREATE_OWN_CHANNEL = 6;
	
	/**
	 * 關閉自創頻道
	 */
	public static final int CLOSE_OWN_CHANNEL = 7;
	
	/**
	 * 離線者如果是創頻者，要記錄離線時間
	 */
	public static final int DISCONNECT_OWN_CHANNEL_SAVE = 8;
	
	/**
	 * 離線後更新頻道玩家訊息
	 */
	public static final int DISCONNECT_CHAT_MEMBER = 9;
	
	/**
	 * 加入聊天群組
	 */
	public static final int JOIN_GROUP = 10;
	
	/**
	 * 加入聊天群組
	 */
	public static final int LEAVE_GROUP = 11;
	
	/**
	 * 關閉群組
	 */
	public static final int CLOSE_GROUP = 12;
	
	/**
	 * 更新群組最後使用時間
	 */
	public static final int UPDATE_LAST_TIME = 13;
	
	/**
	 * 登入時加入群組
	 */
	public static final int ONLINE_ADD_IN_GROUPS = 14;
	
	/**
	 * 更新群組最早離線成員時間
	 */
	public static final int UPDATE_GROUP_OFFLINE_TIME = 15;
	
	/**
	 * 更新群組最後一句話
	 */
	public static final int UPDATE_LAST_WORD = 16;	
	
	/**
	 * 更新群組最大數量
	 */
	public static final int UPDATE_MAX_MEMBER_COUNT = 17;
	
	/**
	 * 刪除群組邀請資訊
	 */
	public static final int CANCEL_INVITE_INFO = 19;
	
	/**
	 * 更新玩家受到邀請群組ID
	 */
	public static final int UPDATE_PLAYER_INVITE_DATA = 20;
	
	/**
	 * 更新公頻
	 */
	public static final int UPDATE_PUBLIC_CHANNEL = 22;
	
	/**
	 * 0: 移除 1: 添加、修改
	 */
	public int type;

	/**
	 * 角色類別(不一定所有更新都會運用到)
	 */
	public int userType;
	
	/**
	 * guid of player
	 */
	public GUID guid;

	/**
	 * session
	 */
	public GUID session;

	public String name;
	
	/**
	 * 帶boolean參數
	 */
	public boolean isTrue;
	
	/**
	 * 擁有者名子
	 */
	public String ownerName;
	
	/**
	 * 頭像資料
	 */
	public String facephoto;

	/**
	 * 所在區域
	 */
	public String zoneId;

	/**
	 * 帳號ID
	 */
	public GUID accountId;
	
	/**
	 * 玩家等級
	 */
	public int level;
	
	/**
	 * 玩家VIP等級
	 */
	public int vip;
	
	/**
	 * 玩家現有金錢
	 */
	public String goldCoin;
	
	/**
	 * 切換後聊天頻道
	 */
	public int channelID;
	
	/**
	 * 現在聊天頻道
	 */
	public int nowChannelID;
	
	/**
	 * 被禁言的時間
	 */
	public long silentExpireTime;
	
	/**
	 * 密碼
	 */
	public String password;
	
	/**
	 * 是否公開
	 */
	public boolean isPublic;
	
	/**
	 * 時間(離線)
	 */
	public Long time;
	
	/**
	 * 玩家擁有群組ID
	 */
	public ArrayList<Integer> groupList;
	
	/**
	 * 群組更新最後一句話
	 */
	public String lastword;
	
	/**
	 * 群組會員上限
	 */
	public int maxMember;

	/**
	 * 是否是認證會員
	 */
	public boolean verifiedMember;
	
	/**
	 * 上線邀請碼
	 */
	public String uplineCode;
	
	/**
	 * 是否是試玩帳號
	 */
	public boolean trialAccount;
	
	/**
	 * 後台禁言時間
	 */
	public long banTalkTime;
	
	/**
	 * 是否是移除公頻
	 */
	public boolean isRemovePublicChannel;
	
	/**
	 * 增減的公頻
	 */
	public ArrayList<Integer> channels;
}
